/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Logica.Core.PersonaLegal;

import Logica.Core.Personal.Equipamiento;
import Logica.Core.Personal.PuestoTrabajo;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import javax.persistence.Basic;
import javax.persistence.Entity;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;

/**
 *
 * @author Luciano
 */
@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public class Personal extends PersonaFisica implements Serializable {

    @Basic
    private double horasTrabajadas;
    @ManyToOne
    private Equipamiento miEquipamiento1;
    @ManyToOne
    private Equipamiento miEquipamiento2;
    @ManyToMany
    private List<PuestoTrabajo> misPuestosDeTrabajo;

    public Personal() {
    }

    public Personal(String dni, String apellido, Date fechaNacimiento, String nombre, String direccion, String email, String telefono) {
        super(dni, apellido, fechaNacimiento, nombre, direccion, email, telefono);
        this.horasTrabajadas = 0;
        this.miEquipamiento1 = null;
        this.miEquipamiento2 = null;
        this.misPuestosDeTrabajo = null;
    }

    public double getHorasTrabajadas() {
        return horasTrabajadas;
    }

    public void setHorasTrabajadas(double horasTrabajadas) {
        this.horasTrabajadas = horasTrabajadas;
    }

    public Equipamiento getMiEquipamiento1() {
        return miEquipamiento1;
    }

    public void setMiEquipamiento1(Equipamiento miEquipamiento1) {
        this.miEquipamiento1 = miEquipamiento1;
    }

    public Equipamiento getMiEquipamiento2() {
        return miEquipamiento2;
    }

    public void setMiEquipamiento2(Equipamiento miEquipamiento2) {
        this.miEquipamiento2 = miEquipamiento2;
    }

    public List<PuestoTrabajo> getMisPuestosDeTrabajo() {
        return misPuestosDeTrabajo;
    }

    public void setMisPuestosDeTrabajo(List<PuestoTrabajo> misPuestosDeTrabajo) {
        this.misPuestosDeTrabajo = misPuestosDeTrabajo;
    }
}
